Recording resources indicators

ABSTRACT

In an implementation of recording resources indicators, recording resources can each be allocated to a different program that is scheduled to be recorded. A program guide application generates a program guide in which programs are associated with a program broadcast schedule that includes a time when each of the programs are scheduled for broadcast. A resource scheduler generates a recording resources indication for display within the program guide to indicate that the recording resources are fully-allocated for a time duration during which one or more of the programs are scheduled to be recorded.

TECHNICAL FIELD

[0001] This invention relates to television-based program recording and,in particular, to recording resources indicators.

BACKGROUND

[0002] In a digital video recording environment, the number of programsthat can be recorded at any one time is determined, or limited, by thenumber of tuners and/or by the available system resources of a recordingdevice. For example, a digital video recorder with two such tuners canreceive and record two programs simultaneously. Only after a user of therecording device requests or schedules three programs for recording atthe same time will the recording device inform the user that the thirdprogram can not be recorded without one of the other two programs beingcanceled.

[0003] Typically, the user is prompted to resolve a conflict by eithercanceling their last recording request, or choosing to cancel apreviously scheduled recording request. However, it can be difficult todetermine the basis of a recording conflict when having to scan throughan extensive list of available channels and programs to try and locatewhich programs have been previously scheduled for recording at the timeindicated as being a conflict. Further, some systems will only identifyto a user one other scheduled program recording as the conflict when theuser schedules another program to be recorded. The user may then cancelthe conflicting scheduled program recording only to be informed that aconflict still exists. This seemingly arbitrary program recordingconflict resolution process further frustrates a user trying todetermine the basis of scheduled program recording conflicts.

[0004] Accordingly, for program recording systems, there is a need toprovide an indication of scheduled program recordings and recordingresource availability so that program recording conflicts can beavoided. Additionally, there is a need to provide a user-friendlyinterface from which a user can quickly determine and resolve a programrecording conflict.

SUMMARY

[0005] Recording resources indicators are described herein.

[0006] In an implementation, recording resources can each be allocatedto a different program that is scheduled to be recorded. A program guideapplication generates a program guide in which programs are associatedwith a program broadcast schedule that includes a time when each of theprograms are scheduled for broadcast. A resource scheduler generates arecording resources indication for display within the program guide toindicate that the recording resources are fully-allocated for a timeduration during which one or more of the programs are scheduled to berecorded.

BRIEF DESCRIPTION OF THE DRAWINGS

[0007] The same numbers are used throughout the drawings to referencelike features and components.

[0008]FIG. 1 illustrates various components of an exemplary recordingresources indication system.

[0009]FIG. 2 illustrates a program guide with exemplary recordingresources indicators.

[0010]FIG. 3 illustrates a program guide with exemplary recordingresources indicators.

[0011]FIG. 4 illustrates a program guide with exemplary recordingresources indicators.

[0012]FIG. 5 illustrates a program information display with an exemplaryprogram recording message.

[0013]FIGS. 6A and 6B illustrate an exemplary program recording conflictresolution guide.

[0014]FIG. 7 illustrates a program guide with exemplary recordingresources indicators for a transponder broadcast system.

[0015]FIGS. 8A and 8B are a flow diagram that illustrates an exemplarymethod for recording resources indicators.

[0016]FIG. 9 illustrates various components of an exemplary clientdevice implemented in a television-based system.

[0017]FIG. 10 illustrates an exemplary system architecture in whichrecording resources indicators can be implemented.

DETAILED DESCRIPTION

[0018] Recording resources indication systems and methods are describedto provide an indication of when recording resources are fully-allocatedto programs that are scheduled to be recorded so that a user of arecording device can avoid program recording conflicts. Further, aprogram recording conflict resolution guide is described to provide aninterface from which a user can quickly determine and resolve programrecording conflicts. A recording device, such as a digital videorecorder implemented in a television-based system, utilizes therecording resources to receive and record broadcast and/or on-demandprograms. Such recording resources include tuners which can each beindependently tuned to a different program channel, available bandwidthover which the program channels are received, available space on arecording media to record the programs, and/or any other type ofrecording resource utilized by a recording device to receive and recordthe programs.

[0019] The recording resources indicators are generated for displaywithin an electronic program guide to indicate a time duration duringwhich the recording resources are fully-allocated to record programsthat have been scheduled, or selected, to be recorded. The recordingresources indicators include a resource allocation bar, asemi-transparent grid section, a list of the programs scheduled to berecorded during the time duration, and/or any combination thereof.Further, any type of program recording message can be generated fordisplay within the electronic program guide or within a programinformation display to indicate to a user that the recording resourcesare fully-allocated for the time duration, or for a portion of the timeduration, in which a particular program is scheduled to be broadcast.These indicators provide a user with visual indications that schedulingan additional program to be recorded during the time duration willinitiate, or otherwise result in, a program recording conflict. Thisenables a user to anticipate recording resource conflicts so that theuser can select programs to be recorded that are not subject to aprogram recording conflict.

[0020] The following discussion is directed to television-basedentertainment and information systems, such as a two-way unicastnetwork, interactive television networks, cable networks, satellitenetworks, and Web-enabled television networks. Client devices in suchsystems range from full-resource clients with substantial memory andprocessing resources, such as television-enabled personal computers andtelevision recorders equipped with hard-disks, to low-resource clientswith limited memory and/or processing resources, such as traditionalset-top boxes that are also implemented to record broadcast programs.While aspects of the described systems and methods for recordingresources indicators can be implemented in any number oftelevision-based entertainment and information systems, and within anynumber and types of client devices, the systems and methods aredescribed in the context of the following exemplary systemarchitectures.

[0021]FIG. 1 illustrates various components of an exemplary recordingresources indication system 100 to implement recording resourcesindicators. System 100 includes a client device 102, a display device104, and one or more content providers 106 which may be a satelliteoperator, a network television operator, a cable operator, and the like.Content providers 106 control the distribution of such content asmovies, programs, commercials, music, and similar audio, video, and/orimage content. Client device 102 receives the content, such as broadcastprograms or on-demand programs, via various transmission media 108, suchas satellite transmission, radio frequency transmission, cabletransmission, and/or via any number of other transmission media.

[0022] Client device 102 can receive broadcast program content andon-demand program content from a headend in a television-based contentdistribution system, for example, that provides the programs as well asprogram guide data to multiple client devices. Client device 104 can beimplemented in any number of embodiments, such as a set-top box, adigital video recorder (DVR) and playback system, and as any other typeof client device that may be implemented in a television-basedentertainment and information system.

[0023] In this example, client device 102 includes a recording media110, one or more tuners 112, a resource schedule application 114, aprogram guide application 116, and one or more processors 118 (e.g., anyof microprocessors, controllers, and the like). Although not shown inthis example, client device 102 may be implemented with any number andcombination of differing components as further described below withreference to FIG. 9. The tuner(s) 112 can each be independently tuned toa different program channel to receive broadcast or on-demand programswhich can be recorded and maintained with the recording media 110 asrecorded programs 120. Recording media 110 can be implemented as anyform of memory component, such as disk drive in a digital videorecorder, for example.

[0024] As used herein, “programs” include news shows, sitcoms, comedies,movies, commercials, talk shows, sporting events, on-demand videos, andany other form of television-based entertainment and information.Further, “recorded programs” include any of the aforementioned“programs” that have been recorded and that are maintained with a memorycomponent (e.g., recording media 110 in client device 102) as recordedprograms 120, or that are maintained with a remote program data store(not shown). The “recorded programs” can also include any of theaforementioned “programs” that have been recorded and that aremaintained at a broadcast center and/or at a headend that distributesthe recorded programs to subscriber sites and client devices.

[0025] Resource schedule application 114 and program guide application116 execute on processor(s) 118 and can be stored as computer-executableinstructions in a non-volatile memory of client device 102. Programguide application 116 is implemented to generate a program guide 122 fordisplay in a display region 124 of display device 104. Resource scheduleapplication 114 is implemented to generate recording resourcesindicators for display within the program guide 122. The resourceschedule application 114 is also referred to herein as the “resourcescheduler”, and the recording resources indicators are described belowwith reference to FIGS. 2-7. Although the resource schedule application114 and the program guide application 116 are each illustrated anddescribed as single applications, resource schedule application 114 andprogram guide application 116 can each be implemented as severalcomponent applications distributed to each perform one or more functionsin a digital video recorder system and/or in any other client device ina television-based entertainment and information system. Further,although illustrated and described as two separate applications, theresource schedule application 114 and the program guide application 116can be implemented together as a single application.

[0026] Program guide 122 includes a program broadcast schedule 126 whichdisplays schedule information to indicate when a particular program 128will be broadcast for viewing and on which program channel 130 theprogram will be broadcast or received. The program schedule informationalso associates each program 128 with a time display 132 that indicatesa time of day when the program will be broadcast for viewing on aparticular program channel 130. A particular program channel number 130corresponds to a program time display 132 to indicate a program channelover which a program will be broadcast for viewing. For example, a“Local News” program will be broadcast for viewing at 9:30 a.m. onprogram channel six (6).

[0027] In this example, program guide 122 also includes a current datedisplay 134. Other formats of a program guide that displays programschedule information may not utilize a grid organized on one axis bytime and on another axis by program channel, as illustrated in FIG. 1.However, other program guide formats may be logically similar to displayprogram channel and time correlations for program broadcasts. Further,although program guide 122 only illustrates a few program channels(e.g., 2, 4, 6, . . . 33), the program guide 122 can typically bescrolled up and/or down to display any number of program channel numbersand associated program listings.

[0028] Program guide 122 can include a selectable control 136 shownimplemented as an on-screen focus. The selectable control 136 can bepositioned to identify, or otherwise hi-lite, a program 128 and, whenselected, initiate client device 102 tuning to the associated programchannel to render the program for display. For example, selectablecontrol 136 is positioned to identify a “Morning News” program scheduledto be broadcast on program channel six (6) starting at 8:30 a.m. Achannel change selection will initiate displaying the selected programon display device 104 for viewing. Further, a program informationselection will initiate displaying a program information display ondisplay device 104 that includes a description of the selected program.A viewer can move selectable control 136 within the program broadcastschedule 126 and generate a channel change selection or a programinformation selection by manipulating an input device, such as a remotecontrol for example.

[0029]FIG. 2 illustrates an exemplary implementation 200 of recordingresources indicators 202 and 204 displayed within program guide 122.Recording resources of a client device include the tuners 112 (FIG. 1)which can each be independently tuned to a different program channel,available bandwidth over which client device 102 receives one or moreprogram channels, available space on recording media 110 to record andmaintain programs, and/or any other type of recording resource utilizedby a client device to receive and record the programs.

[0030] In this example, each of the recording resources indicators 202and 204 are a resource allocation bar. Resource allocation bar 202indicates a beginning 206 of a time duration 208 and an end 210 of thetime duration 208 during which the recording resources of client device102 are fully-allocated to record one or more programs 128 as scheduled.For example, a program “Money Tips” on program channel four (4) startingat 9:30 a.m. is scheduled to be recorded as indicated by a programrecording identifier 212. Additionally, a program “College Basketball”on program channel thirty-three (33) also starting at 9:30 a.m. isscheduled to be recorded as indicated by a program recording identifier214.

[0031] For a two-tuner client device, the first tuner can be allocatedto receive the first program “Money Tips” and the second tuner can beallocated to receive the second program “College Basketball” such thatthe two programs can be recorded as scheduled at the same time. Thus,for time duration 208 from 9:30 a.m. to 10:30 a.m., the recordingresources (e.g., the two tuners of the example two-tuner client device)are fully-allocated in that another program can not be scheduled to berecorded during the time duration 208 without initiating a programrecording conflict.

[0032] Similarly, resource allocation bar 204 indicates a time durationbeginning at 11:00 a.m. during which a program “Movie” on programchannel fifty-four (54) is scheduled to be recorded as indicated by aprogram recording identifier 216. The “College Basketball” program onchannel thirty-three (33) starting at 9:30 a.m. overlaps with thescheduled recording of the “Movie” program beginning at 11:00 a.m. Thisoverlap of scheduled program recordings is indicated by resourceallocation bar 204. For the example two-tuner client device, the twotuners (e.g., the recording resources) are fully-allocated and anotherprogram can not be scheduled to be recorded during the time durationstarting at 11:00 a.m. when the “Movie” program and the “CollegeBasketball” program overlap without initiating a program recordingconflict.

[0033] The resource allocation bars 202 and 204 can be generated by theresource schedule application 114 as solid, colored, and/or patternedbars along the top or bottom of the program guide 122. The recordingresources indicators described 11 herein, such as the resourceallocation bar 202, provide a visual indication that the recordingresources of a client device are fully-allocated for a time duration toreceive and record programs that have been scheduled, or otherwisedesignated, to be recorded.

[0034]FIG. 3 illustrates an exemplary implementation 300 of a recordingresources indicator 302 displayed within program guide 122. In thisexample, the recording resources indicator 302 is a list of the programsscheduled to be recorded during a time duration from 9:30 a.m. to 10:30a.m., and indicates that the recording resources of the client deviceare fully-allocated for the time duration. For example, a program“Sports Desk” on program channel eighty-seven (87) starting at 9:30 a.m.is scheduled to be recorded as indicated by a program recordingidentifier 304. Additionally, the program “College Basketball” onprogram channel thirty-three (33) also starting at 9:30 a.m. isscheduled to be recorded as indicated by the program recordingidentifier 214.

[0035] For a two-tuner client device, the first tuner can be allocatedto receive the first program “Sports Desk” and the second tuner can beallocated to receive the second program “College Basketball” such thatthe two programs can be recorded as scheduled at the same time. Thus,for the time duration from 9:30 a.m. to 10:30 a.m., the recordingresources (e.g., the two tuners of the example two-tuner client device)are fully-allocated and another program can not be scheduled to berecorded during the time duration without initiating a program recordingconflict.

[0036] The list of programs 302 (e.g., the recording resourcesindicator) provides a visual indication that the recording resources ofa client device are fully-allocated for a time duration to receive andrecord programs that have been scheduled, or otherwise designated, to berecorded. Further, the list of programs 302 displays the programs thatare scheduled to be recorded together on one display so that a user doesnot have to scan through an extensive list of available channels andprograms in the program guide 122 to locate other programs which mayhave been previously scheduled for recording during the time duration.

[0037] Although the list of programs 302 is illustrated as beingdisplayed above the program broadcast schedule 126 within program guide122, the list of programs 302 can be displayed anywhere within theprogram guide. Further, the list of programs 302 can be displayed with aresource allocation bar, such as with resource allocation bar 202, orthe list of programs 302 can be displayed independently within programguide 122.

[0038]FIG. 4 illustrates an exemplary implementation 400 of a recordingresources indicators 402 and 404 displayed within program guide 122. Inthis example, each of the recording resources indicators 402 and 404 aregenerated by the resource schedule application 114 (FIG. 1) as asemi-transparent grid section that can be colored, shaded, patterned, orotherwise indicative of a time duration during which client devicerecording resources are fully-allocated to receive and record one ormore programs.

[0039] For example, the program “Money Tips” on program channel four (4)starting at 9:30 a.m. is scheduled to be recorded as indicated by theprogram recording identifier 212. Additionally, the program “CollegeBasketball” on program channel thirty-three (33) also starting at 9:30a.m. is scheduled to be recorded as indicated by a program recordingidentifier 214. For a two-tuner client device, the first tuner can beallocated to receive the first program “Money Tips” and the second tunercan be allocated to receive the second program “College Basketball” suchthat the two programs can be recorded as scheduled at the same time.Thus, for the time duration from 9:30 a.m. to 10:30 a.m., the recordingresources (e.g., the two tuners of the example two-tuner client device)are fully-allocated and another program can not be scheduled to berecorded without initiating a program recording conflict.

[0040] Similarly, the semi-transparent grid section 404 indicates a timeduration beginning at 11:00 a.m. during which a program “Movie” onprogram channel fifty-four (54) starting at 11:00 a.m. is scheduled tobe recorded as indicated by the program recording identifier 216. The“College Basketball” program on channel thirty-three (33) starting at9:30 a.m. overlaps with the scheduled recording of the “Movie” programbeginning at 11:00 a.m. which is indicated by the semi-transparent gridsection 404. For the example two-tuner client device, the two tuners(e.g., the recording resources) are fully-allocated and another programcan not be scheduled to be recorded during the time duration starting at11:00 a.m. when the “Movie” program and the “College Basketball” programoverlap without initiating a program recording conflict.

[0041] Although not shown, a semi-transparent grid section, such as thesemi-transparent grid section 402, can be displayed within the programguide 122 along with a resource allocation bar, such as with theresource allocation bar 202 as shown in FIG. 2. A semi-transparent gridsection can also be displayed along with a list of programs, such aswith the list of programs 302 shown in FIG. 3, and/or with anycombination of resource allocation bars and lists of programs.

[0042]FIG. 5 illustrates a program information display 500 on a displaydevice 502. The program information display 500 includes a description504 of a selected program 506 and may include other program information508. For example, a user can select the program 506 from the programguide 122 with selectable control 512 to initiate that the program guideapplication 116 generate the program information display 500.

[0043] When a portion of the selected program 506 is scheduled forbroadcast during a time duration in which client device recordingresources are filly-allocated for other scheduled program recordings,the resource schedule application 114 (FIG. 1) generates a programrecording message 510 for display with the program information 504 and508 on display 502. The program recording message 510 indicates to auser that the client device recording resources are fully-allocated forthe time duration, or for a portion of the time duration, in which theselected program 506 is scheduled to be broadcast. This provides theuser with a visual indication that scheduling the selected program 506to be recorded will result in a program recording conflict. The programinformation display 500 can include a selectable control 514 that whenselected allows the user to resolve the potential recording conflict asdescribed below with reference to the program recording conflictresolution guide shown in FIGS. 6A and 6B.

[0044]FIGS. 6A and 6B illustrate an exemplary program recording conflictresolution guide 600. The resource schedule application 114 (FIG. 1)generates the program recording conflict resolution guide 600 to displaythe programs that are scheduled to be recorded and which create ascheduling conflict due to the recording resources being fully-allocatedfor a time duration. For example, during a time duration from 9:30 a.m.to 10:30 a.m., programs, or portions thereof, that create a programrecording scheduling conflict are identified by a resource allocationbar 602 and a semi-transparent grid section 604. Although the programrecording scheduling conflicts are indicated with both the resourceallocation bar 602 and the semi-transparent grid section 604, either ofthe recording resources indicators can be displayed independently toindicate a conflict with the recording resources.

[0045] A first program “Money Tips” on program channel four (4) startingat 9:30 a.m. is scheduled to be recorded as indicated by a programrecording identifier 606, and a first tuner will be allocated to receivethe program. A second program “College Basketball” on program channelthirty-three (33) also starting at 9:30 a.m. is scheduled to be recordedas indicated by a program recording identifier 608, and a second tunerwill be allocated to receive the program. For the example two-tunerclient device, the recording resources (e.g., the two tuners) arefully-allocated to receive and record the two programs.

[0046] There is a program recording conflict because a portion ofanother program “College Basketball” on program channel fifty-six (56)starting at 8:30 a.m. is scheduled to be recorded, in part during thetime duration from 9:30 a.m. to 10:30 a.m., as indicated by a programrecording identifier 610. Additionally, a program “Sports Desk” onprogram channel eighty-seven (87) starting at 9:30 a.m. is alsoscheduled to be recorded as indicated by a program recording identifier612. For the example two-tuner client device, these two additionalprograms cause a recording conflict because the recording resources(e.g., the two tuners) are already fully-allocated.

[0047] The program recording identifiers 610 and 612 are each displayedwithin the program recording conflict resolution guide 600 with an “X”through them to indicate to a viewer that, if the program recordingconflicts are not resolved, the programs associated with the programrecording identifiers 610 and 612 will not be recorded as scheduled. Forexample, the program “College Basketball” on program channel fifty-six(56) starting at 8:30 a.m. will not be recorded during the time durationfrom 9:30 a.m. to 10:45 a.m. unless the program recording conflicts areresolved. Further, the program “Sports Desk” on program channeleighty-seven (87) starting at 9:30 a.m. will also not be recorded unlessthe program recording conflicts are resolved.

[0048]FIG. 6B illustrates that a user can resolve program recordingconflicts from the program recording conflict resolution guide 600. Onesuch resolution for the program recording conflicts scheduled during thetime duration from 9:30 a.m. to 10:30 a.m. is shown in FIG. 6B. In thisexample, the program “Sports Desk” on program channel eighty-seven (87)is no longer scheduled to be recorded. Further the scheduled recordingof program “College Basketball” on program channel thirty-three (33) hasbeen modified to record only the last half of the program as indicatedby the program recording identifier 614. The program recordingidentifier 614 is displayed as a portion of an identifier to indicatethat only a portion of the program is scheduled to be recorded. Thus,for the example two-tuner client device, the scheduling conflicts forthe recording resources (e.g., the two tuners) are resolved.

[0049]FIG. 6A also illustrates other program recording conflicts withprograms, or portions thereof, that are scheduled to be recorded andwhich create a scheduling conflict due to the recording resources beingfully-allocated for time durations from 10:30 a.m. to 10:45 a.m. andfrom 11:00 a.m. to 11:30 a.m. A first program “College Basketball” onprogram channel thirty-three (33) starting at 9:30 a.m. is scheduled tobe recorded as indicated by the program recording identifier 608, and afirst tuner will be allocated to receive the program. A second program“Investing” on program channel four (4) starting at 10:30 a.m. isscheduled to be recorded as indicated by a program recording identifier616, and a second tuner will be allocated to receive the program. Forthe example two-tuner client device, the recording resources (e.g., thetwo tuners) are fully-allocated to receive and record the two programsduring a time duration from 10:30 a.m. to 11:30 a.m.

[0050] There is a first program recording conflict because a portion ofanother program “Movie” on program channel fifty-four (54) starting at11:00 a.m. is scheduled to be recorded, in part during the time durationfrom 11:00 a.m. to 11:30 a.m., as indicated by a program recordingidentifier 618. For the example two-tuner client device, this additionalprogram causes a recording conflict because the recording resources(e.g., the two tuners) are already fully-allocated.

[0051] Additionally, there is a second program recording conflictbecause additional program recording time 620 is scheduled after the endof the program “College Basketball” on program channel fifty-six (56)starting at 8:30 a.m. Additional program recording time, also referredto as “padding”, can be scheduled by a user or automatically set by thesystem to account for the possibility that a particular program runsover the scheduled broadcast time. This is common for sporting events,such as baseball and basketball, where the competition is extended to anovertime period and the program broadcast continues beyond the scheduledend of the broadcast. In this example, the additional program recordingtime 620 is scheduled to be recorded during the time duration from 10:30a.m. to 10:45 a.m. and is visually distinct from the program itself sothat a viewer can independently remove the additional program recordingtime from the program recording schedule while maintaining the scheduledrecording of the associated program. Alternatively, if the paddingcannot be removed, a message or other indication can inform the user asto why a conflicting recording cannot be scheduled. The programrecording conflict resolution guide is particularly useful in this case,because padding is rarely shown on a program guide. Therefore, withoutthe usage indicators, the user would have no-way of knowing that all ofa tuner's resources are scheduled for use by the additional programrecording time of a padded show. The usage indicators enable a user tooverride a system that implements automatic padding which may preventthe user from recording another program.

[0052]FIG. 6B also illustrates one example conflict resolution for theprogram recording conflicts scheduled during the time durations from10:30 a.m. to 10:45 a.m. and from 11:00 a.m. to 11:30 a.m. In thisexample, the additional program recording time 620 after the end of theprogram “College Basketball” on program channel fifty-six (56) is nolonger scheduled to be recorded. The scheduled recording of program“College Basketball” on program channel thirty-three (33) has beenmodified to record only the last half of the program as indicated by theportion of program recording identifier 614. Further, the scheduledrecording of program “Investing” on program channel four (4) has beenmodified to record only the first half of the program as indicated by aprogram recording identifier 622. The program recording identifier 622is displayed as a portion of an identifier to indicate that only aportion of the program is scheduled to be recorded. Thus, for theexample two-tuner client device, the scheduling conflicts for therecording resources (e.g., the two tuners) are resolved.

[0053] The program recording conflict resolution guide 600 can begenerated for display at any time that a recording conflict isscheduled. A user can then knowingly schedule a program recordingconflict so that a program recording 11 conflict resolution guide isdisplayed from which the user can view all of the programs scheduled tobe recorded for a particular time duration. The user can then resolveprogram recording conflicts without having to search line-by-linethrough an extensive listing of programs to try and locate whichprograms have been previously scheduled for recording at the timeindicated as being a conflict. The program recording conflict resolutionguide 600 can also be generated for a minimized or compressed display toshow an entire conflict resolution guide that includes all of theprograms scheduled to be recorded.

[0054]FIG. 7 illustrates an exemplary implementation 700 of recordingresources indicators displayed within a program guide 122 for atransponder broadcast system. A digital transponder is a digital signalover which more than one television channel, each consisting of multiplescheduled programs, can be received with a single client device tuner.Examples of client devices configured to receive digital transponderbroadcasts are described in greater detail in U.S. patent applicationSer. No. 10/094,048, filed Mar. 8, 2002, entitled “Transport Processorfor Processing Multiple Transport Streams” to Coffin et al. which isincorporated by reference herein for the purpose of implementingrecording resources indicators.

[0055] A client device configured to receive digital transponderbroadcasts includes a processing circuit that receives and processes oneor more transport input streams which are received from the contentprovider(s). Each transport input stream can include program content formultiple programs broadcast on one or more program channels. The clientdevice may then be able to record multiple programs that are receivedwith a single tuner. For example, three programs can be recorded with atwo-tuner client device if at least two of the programs are broadcast onprogram channels that are received via a single transponder and if theclient device includes sufficient de-multiplexing resources.

[0056] In the example shown in FIG. 7, the resource schedule application114 (FIG. 1) generates recording resources indicators 702, 704, and 706as semi-transparent grid sections for display within the program guide122 to indicate that the recording resources are fully-allocated to oneor more transponders to record scheduled programs for a time durationfrom 9:30 a.m. to 10:30 a.m. The program “Money Tips” on program channelfour (4) starting at 9:30 a.m., the program “College Basketball” onprogram channel thirty-three (33) also starting at 9:30 a.m., and theprogram “College Basketball” on program channel fifty-six (56) startingat 8:30 a.m. are all scheduled to be recorded during the time durationas indicated by each of the respective program recording identifiers708, 710, and 712.

[0057] As illustrated, program channel four (4) and program channel six(6) are received together via a first digital transponder. Similarly,program channel thirty-three (33), program channel fifty-six (56), andprogram channel fifty-seven (57) are received together via a seconddigital transponder. For the example two-tuner client device, the firstprogram “Money Tips” on program channel four (4) can be received withthe first tuner while the two programs “College Basketball” on channelsthirty-three (33) and fifty-six (56) can be received with the secondtuner because the two programs are received together via the seconddigital transponder.

[0058] The recording resources indicators 702, 704, and 706 (e.g., thesemi-transparent grid sections in this example) also indicate, oridentify, the programs that would create a recording conflict if theywere scheduled to be recorded due to the recording resources beingfully-allocated to record other programs. The programs that can not berecorded are those that are not received on the same transponder as anyof the programs that are already scheduled to be recorded. For example,a program “Infomercial” on program channel forty-five (45) can not bescheduled to be recorded without creating a recording resourcesscheduling conflict because the program channel forty-five (45) isreceived via a digital transponder other than the first and secondtransponders.

[0059] Alternatively, the program “Local News” on program channel six(6) starting at 9:30 a.m. can be scheduled for recording because programchannel six (6) is also received via the first digital transponder. Therecording resource (e.g., the first tuner of the client device) can beallocated to receive the “Local News” program for recording along withthe “Money Tips” program. Similarly, the second tuner of the clientdevice can be allocated to receive the program “Auto Show/Paris” onprogram channel fifty-seven (57) for recording along with the two“College Basketball” programs because program channel fifty-seven (57)is also received via the second digital transponder.

[0060] Although not shown in FIG. 7, the semi-transparent grid sections702, 704, and 706 can be displayed within the program guide 122 alongwith a resource allocation bar, such as with the resource allocation bar202 as shown in FIG. 2, and/or can also be displayed along with a listof programs, such as with the list of programs 302 shown in FIG. 3. Anycombination of recording resources indicators, such as resourceallocation bars, lists of programs, semi-transparent grid sections, textmessages, and the like, can be displayed together within a program guideto indicate when recording resources are fully-allocated to recordprograms.

[0061] Methods for recording resources indicators may be described inthe general context of computer-executable instructions. Generally,computer-executable instructions include routines, programs, objects,components, data structures, procedures, and the like that performparticular functions or implement particular abstract data types. Themethods may also be practiced in a distributed computing environmentwhere functions are performed by remote processing devices that arelinked through a communications network. In a distributed computingenvironment, computer-executable instructions may be located in bothlocal and remote computer storage media, including memory storagedevices.

[0062]FIGS. 8A and 8B illustrate a method 800 for recording resourcesindicators. The order in which the method is described is not intendedto be construed as a limitation, and any number of the described methodblocks can be combined in any order to implement the method.Furthermore, the method can be implemented in any suitable hardware,software, firmware, or combination thereof.

[0063] At block 802 (FIG. 8A), a program guide is generated in whichprograms are associated with a program broadcast schedule. For example,program guide 1212 (FIG. 1) associates programs 128 with a programbroadcast schedule 126 that includes a time 132 when each of theprograms 128 are scheduled for broadcast on a program channel 130.

[0064] At block 804, a determination is made as to whether bandwidth isavailable to receive broadcasts of one or more program channels. Thisincludes a determination as to whether bandwidth is available for aclient device configured to receive digital transponder broadcasts ofmultiple program channels. If the bandwidth is not available (i.e., “no”from block 804), then a recording resources indication is generated toindicate that recording resources are fully-allocated for a timeduration at block 806. For example, the resource scheduler 114 (FIG. 1)generates a recording resources indication, such as a resourceallocation bar 202 (FIG. 2), a list of programs scheduled to be recorded302 (FIG. 3), and/or a semi-transparent grid section 402 (FIG. 4) fordisplay within the program guide 122 to indicate that recordingresources are fully-allocated for a time duration during which theprograms are scheduled to be recorded. The recording resourcesindication can be generated to indicate a beginning of the time durationand an end of the time duration during which the recording resources arefully-allocated.

[0065] If the bandwidth is available (i.e., “yes” from block 804), thena determination is made as to whether recording media space is availableto record one or more of the programs at block 808. If the recordingmedia space is not available (i.e., “no” from block 808), then therecording resources indication is generated to indicate that recordingresources are fully-allocated for a time duration at block 806.

[0066] If the recording media space is available (i.e., “yes” from block808), then a determination is made as to whether a tuner is availablethat can be allocated to receive a program during the time duration atblock 810. This includes a determination as to whether a tuner can beallocated to tune to a transponder broadcast to receive one or moreprogram channels for a client device configured to receive digitaltransponder broadcasts. If a tuner is not available (i.e., “no” fromblock 810), then the recording resources indication is generated toindicate that recording resources are fully-allocated for a timeduration at block 806.

[0067] If a tuner is available (i.e., “yes” from block 810), then atleast a sufficient portion of each of the recording resources isavailable to receive and record programs that have been scheduled to berecorded. Although this example only describes available bandwidth,recording media space, and tuner(s) as the recording resources, a clientdevice can be implemented with any number and other types of recordingresources to receive and record the programs.

[0068] At block 812 (FIG. 8B), an input is received to generate aprogram information display that includes a description of a selectedprogram. For example, a program information display 500 (FIG. 5) isgenerated by the program guide application 116 (FIG. 1) to display adescription 504 and other associated information 508 about a selectedprogram 506. At block 814, a determination is made as to whether atleast a portion of the selected program is scheduled for broadcastduring a time duration when the recording resources are fully-allocated.

[0069] If the selected program, or a portion of the selected program, isscheduled for broadcast during the time duration when the recordingresources are fully-allocated (i.e., “yes” from block 814), then aprogram recording message is generated for display with the programinformation to indicate that the recording resources are fully-allocatedfor the time duration at block 816. For example, the resource scheduler114 (FIG. 1) generates the program recording message 510 (FIG. 5) fordisplay with the program information. If the selected program, or aportion of the selected program, is not scheduled for broadcast during atime duration when the recording resources are fully-allocated (i.e.,“no” from block 814), then a program recording message is generated fordisplay with the program information to indicate that the recordingresources are not fully-allocated for the time duration at block 818.

[0070] At block 820, an input is received to record a selected program,or a portion of a program, that is scheduled to be broadcast. At block822, a determination is made as to whether the recording resources arefully-allocated to record other programs during a time duration in whichthe selected program is scheduled to be broadcast. If the recordingresources are fully-allocated to record other programs (i.e., “yes” fromblock 822), then a program recording conflict resolution guide isgenerated at block 824. For example, the resource scheduler 114 (FIG. 1)generates the program recording conflict resolution guide 600 (FIG. 6)that displays each program scheduled to be recorded over a time durationin which one or more of the programs scheduled to be recorded create ascheduling conflict due to the recording resources being fully-allocatedto record other programs.

[0071] If the recording resources are not fully-allocated to recordother programs (i.e., “no” from block 822), then recording resources areallocated to receive and record the selected program that is scheduledto be recorded at block 826. For example, a tuner 112 (FIG. 1) in aclient device 102 is allocated to tune to a program channel on which theselected program will be received for a time duration corresponding tothe scheduled program broadcast time. This includes allocating a tunerto tune to a transponder broadcast on which one or more program channelswill be received for a client device configured to receive digitaltransponder broadcasts.

[0072]FIG. 9 illustrates a television-based system 900 that includes anexemplary client device 902 which includes components to implementrecording resources indicators. System 900 also includes a displaydevice 904 to display the program guide 122 and the recording resourcesschedule indicators, as well as the program recording conflictresolution guide 600 (FIG. 6). Exemplary client device 902 can beimplemented as a set-top box, a satellite receiver, a TV recorder with ahard disk, a digital video recorder (DVR) and playback system, a gameconsole, an information appliance, and as any number of similarembodiments.

[0073] Client device 902 includes one or more tuners 906 which arerepresentative of one or more in-band tuners that tune to variousfrequencies or channels to receive television signals, as well as anout-of-band tuner that tunes to the program channel over which programdata is broadcast to client device 902. Client device 902 also includesone or more processors 908 (e.g., any of microprocessors, controllers,and the like) which process various instructions to control theoperation of client device 902 and to communicate with other electronicand computing devices.

[0074] Client device 902 can be implemented with one or more memorycomponents, examples of which include a random access memory (RAM) 910,mass storage media 912, a disk drive 914, and a non-volatile memory 916(e.g., any one or more of a read-only memory (ROM), flash memory, EPROM,EEPROM, etc.). Disk drive 914 can include any type of magnetic oroptical storage device, such as a hard disk drive, a magnetic tape, arecordable and/or rewriteable compact disc (CD), a DVD, a DVD+RW, andthe like. The one or more memory components provide data storagemechanisms to store various information and/or data such as receivedcontent, program guide data 918, recorded programs 920, configurationinformation for client device 902, graphical user interface information,and any other types of information and data related to operationalaspects of client device 902. Alternative implementations of clientdevice 902 can include a range of processing and memory capabilities,and may include any number of differing memory components than thoseillustrated in FIG. 9. For example, full-resource clients can beimplemented with substantial memory and processing resources, whereaslow-resource clients may have limited processing and memorycapabilities.

[0075] An operating system 922 and one or more application programs 924can be stored in non-volatile memory 916 and executed on processor(s)908 to provide a runtime environment. A runtime environment facilitatesextensibility of client device 902 by allowing various interfaces to bedefined that, in turn, allow application programs 924 to interact withclient device 902. The application programs 924 can include a browser tobrowse the Web (e.g., “World Wide Web”), an email program to facilitateelectronic mail, and any number of other application programs.

[0076] A program guide application 926 that executes on processor(s) 908is also stored in non-volatile memory 916 and is implemented to processthe program guide data 918. Program guide application 926 generates theprogram guides which enable a viewer to navigate through an onscreendisplay and locate broadcast programs, recorded programs, videoon-demand programs and movies, interactive game selections, and othermedia access information or content of interest to the viewer. Withprogram guide application 926, the television viewer can look atschedules of current and future programming, set reminders for upcomingprograms, and/or enter instructions to record one or more programs.

[0077] Client device 902 further includes one or more communicationinterfaces 928 and a PSTN, DSL, cable, or other type of modem 930. Thecommunication interface(s) 928 can be implemented as any one or more ofa serial and/or parallel interface, as a wireless interface, any type ofnetwork interface, and as any other type of communication interface. Awireless interface enables client device 902 to receive control inputcommands 932 and other information from a user-operated input device,such as from a remote control device 934 or from another infrared (IR),802.11, Bluetooth, or similar RF input device. Input devices can includea wireless keyboard or another handheld input device 936 such as apersonal digital assistant (PDA), handheld computer, wireless phone, orthe like.

[0078] A network interface provides a connection between client device902 and a data communication network which allows other electronic andcomputing devices coupled to a common data communication network tocommunicate information to client device 902 via the network. Similarly,a serial and/or parallel interface provides a data communication pathdirectly between client device 902 and another electronic or computingdevice to interact and communicate with the other device via any numberof the various communication links. Modem 930 facilitates client device902 communication with other electronic and computing devices via aconventional telephone line, a DSL connection, cable, and/or other typeof connection.

[0079] Client device 902 also includes a content processor 938 which caninclude a video decoder and/or additional processors to receive,process, and decode broadcast video signals and program data, such asNTSC, PAL, SECAM, or other television system analog video signals, aswell as DVB, ATSC, or other television system digital video signals. Forexample, content processor 938 can include an MPEG-2 or MPEG-4 (MovingPictures Experts Group) decoder that decodes MPEG-encoded video contentand/or image data. The systems described herein can be implemented forany type of video encoding format as well as for data and/or contentstreams that are not encoded.

[0080] Typically, video content and program data includes video data andcorresponding audio data. Content processor 938 generates video and/ordisplay content that is formatted for display on display device 904, andgenerates decoded 11 audio data that is formatted for presentation by apresentation device, such as one or more speakers (not shown) in displaydevice 904. Content processor 938 can include a display controller (notshown) that processes the video and/or display content to displaycorresponding images on display device 904. A display controller can beimplemented as a graphics processor, microcontroller, integratedcircuit, and/or similar video processing component to process theimages.

[0081] Client device 902 also includes an audio and/or video output 940that provides the audio, video, and/or display signals to television 904or to other devices that process and/or display, or otherwise render,the audio and video data. Video signals and audio signals can becommunicated from client device 902 to television 904 via an RF (radiofrequency) link, S-video link, composite video link, component videolink, analog audio connection, or other similar communication links.

[0082] Although shown separately, some of the components of clientdevice 902 may be implemented in an application specific integratedcircuit (ASIC). Additionally, a system bus (not shown) typicallyconnects the various components within client device 902. A system buscan be implemented as one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, or a local bus using any of a varietyof bus architectures. By way of example, such architectures can includean Industry Standard Architecture (ISA) bus, a Micro ChannelArchitecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video ElectronicsStandards Association (VESA) local bus, and a Peripheral ComponentInterconnects (PCI) bus also known as a Mezzanine bus.

[0083]FIG. 10 illustrates an exemplary system architecture 1000 in whichrecording resources indicators can be implemented. System 1000facilitates distribution of content and program guide data to multipleviewers. The system 1000 includes one or more content providers 1002,one or more program guide data providers 1004, a content distributionsystem 1006, and multiple client devices 1008(1), 1008(2), . . . ,1008(N) coupled to the content distribution system 1006 via a broadcastnetwork 1010.

[0084] A content provider 1002 can be implemented as a satelliteoperator, a network television operator, a cable operator, and the like.A content provider 1002 includes a content server 1012 to controldistribution of stored content 1014, such as movies, televisionprograms, commercials, music, and similar audio, video, and/or imagecontent from content provider 1002 to the content distribution system1006. Additionally, content server 1012 controls distribution of livecontent (e.g., content that was not previously stored, such as livefeeds) and/or content stored at other locations to the contentdistribution system 1006.

[0085] A program guide data provider 1004 includes a program guidedatabase 1016 and a program guide data server 1018. The program guidedatabase 1016 stores electronic files of program guide data which isused to generate an electronic or interactive program guide (or,“program guide”). Program guide data can include a program title,program broadcast day(s) to identify which days of the week the programwill be broadcast, program start times(s) to identify a time that theprogram will be broadcast on the particular day or days of the week, anda program category. A program category describes the genre of a programand categorizes it as a particular program type. For example, a programcan be categorized as a movie, a comedy, a sporting event, a newsprogram, a sitcom, a talk show, or as any number of other categorydescriptions. Program guide data can also include program ratings,characters, descriptions, actor names, station identifiers, channelidentifiers, other schedule information, and so on. Additionally,program guide data may include video on-demand content information, suchas movie schedules, as well as application information, such as forinteractive games, and other programming information that may be ofinterest to a viewer.

[0086] The program guide data server 1018 processes the program guidedata prior to distribution to generate a published version of theprogram guide data which can contain programming information for allbroadcast channels and on-demand content listings for one or more days.The processing may involve any number of techniques to reduce, modify,or enhance the program data such as data compression, formatmodification, and the like. The program guide data server 1018 controlsdistribution of the published version of the program guide data from aprogram guide data provider 1004 to the content distribution system 1006using, for example, a file transfer protocol (FTP) over a TCP/IP network(e.g., Internet or Intranet). Further, the published version of theprogram guide data can be transmitted from program data provider 1004via a satellite and the content distribution system 1006 directly to aclient device 1008.

[0087] Content distribution system 1006 is representative of a headendservice and/or program data center that provides program guide data, aswell as content, to multiple subscribers (e.g., client devices 1008).Each content distribution system 1006 may receive a different version ofthe program guide data that takes into account different programmingpreferences and lineups. The program guide data server 1018 can createdifferent versions of the program guide data that includes thosechannels of relevance to respective headend services, and the contentdistribution system 1006 transmits the program guide data to themultiple client devices 1008. In one implementation, for example,content distribution system 1006 utilizes a carousel file system torepeatedly broadcast the program guide data over an out-of-band (OOB)channel to the client devices 1008. Alternatively, the multiple clientdevices 1008 can receive standard, or uniform, program guide data andindividually determine which program guide data to display based on theassociated headend service.

[0088] Content distribution system 1006 includes a broadcast transmitter1020, one or more content processing applications 1022, and one or moreprogram guide data processing applications 1024. Broadcast transmitter1020 broadcasts signals, such as cable television signals, acrossbroadcast network 1010. Broadcast network 1010 can include a cabletelevision network, RF, microwave, satellite, and/or data network, suchas the Internet, and may also include wired or wireless transmissionmedia using any broadcast format or broadcast protocol. Additionally,broadcast network 1010 can be any type of network, using any type ofnetwork topology and any network communication protocol, and can berepresented or otherwise implemented as a combination of two or morenetworks.

[0089] A content processing application 1022 processes the contentreceived from a content provider 1002 prior to transmitting the contentacross broadcast network 1010. Similarly, a program guide dataprocessing application 1024 processes the program guide data receivedfrom a program guide data provider 1004 prior to transmitting theprogram guide data across broadcast network 1010. A particular contentprocessing application 1022 may encode, or otherwise process, thereceived content into a format that is understood by the multiple clientdevices 1008 which are coupled to broadcast network 1010. Although FIG.10 shows a single content provider 1002, a single program guide dataprovider 1004, and a single content distribution system 1006, exemplarysystem 1000 can include any number of content providers and/or programguide data providers coupled to any number of content distributionsystems.

[0090] Client devices 1008 can be implemented in a number of ways. Forexample, a client device 1008(1) receives broadcast content from asatellite-based transmitter via a satellite dish 1026. Client device1008(1) is also referred to as a set-top box or a satellite receivingdevice. Client device 1008(1) is coupled to a television 1028(1) forpresenting the content received by the client device (e.g., audio data,video data, and image data), as well as a graphical user interface. Aparticular client device 1008 can be coupled to any number oftelevisions 1028 and/or similar devices that can be implemented todisplay or otherwise render content. Similarly, any number of clientdevices 1008 can be coupled to a single television 1028.

[0091] Client device 1008(2) is also coupled to receive broadcastcontent from broadcast network 1010 and provide the received content toassociated television 1028(2). Client device 1008(N) is an example of acombination television 1030 and integrated set-top box 1032. In thisexample, the various components and functionality of the set-top box areintegrated into the television, rather than using two separate devices.The set-top box integrated into the television can receive broadcastsignals via a satellite dish (similar to satellite dish 1026) and/or viabroadcast network 1010. In alternate implementations, client devices1008 may receive broadcast signals via the Internet or any otherbroadcast medium, such as back channel 1034 which can be implemented asa Internet protocol (IP) connection or as other protocol connectionsusing a modem connection and conventional telephone line, for example.Further, back channel 1034 provides an alternate communication linkbetween each of the client devices 1008, and between the client devices1008 and the content distribution system 1006.

[0092] The exemplary system 1000 also includes stored on-demand content1036, such as video on-demand (VOD) movie content. The stored on-demandcontent 1036 can be viewed with a television 1028 via a client device1008 through an onscreen movie guide, for example, and a viewer canenter instructions to stream a particular movie, or other storedcontent, to a corresponding client device 1008.

[0093] Although the invention has been described in language specific tostructural features and/or methods, it is to be understood that theinvention defined in the appended claims is not necessarily limited tothe specific features or methods described. Rather, the specificfeatures and methods are disclosed as exemplary implementations of theclaimed invention.

1. A recording resources indication system, comprising: one or morerecording resources each configured for allocation to a differentprogram that is scheduled to be recorded; a program guide applicationconfigured to generate a program guide in which programs are associatedwith a program broadcast schedule that includes a time when each of theprograms are scheduled for broadcast; and a resource schedulerconfigured to generate a recording resources indication for displaywithin the program guide to indicate that the one or more recordingresources are fully-allocated for a time duration during which one ormore of the programs are scheduled to be recorded.
 2. A recordingresources indication system as recited in claim 1, wherein the one ormore recording resources are tuners each configured to tune to adifferent program channel.
 3. A recording resources indication system asrecited in claim 1, wherein the one or more recording resources include:a recording media configured to maintain recorded programs; and multipletuners each configured to tune to a different program channel to receivea program scheduled to be recorded with the recording media.
 4. Arecording resources indication system as recited in claim 1, wherein theresource scheduler generates the recording resources indication as aresource allocation bar to indicate a beginning of the time duration andan end of the time duration during which the one or more recordingresources are fully-allocated.
 5. A recording resources indicationsystem as recited in claim 1, wherein the resource scheduler generatesthe recording resources indication as a list of the programs scheduledto be recorded during the time duration.
 6. A recording resourcesindication system as recited in claim 1, wherein: the resource schedulergenerates the recording resources indication as a resource allocationbar to indicate a beginning of the time duration and an end of the timeduration during which the one or more recording resources arefully-allocated; and the resource scheduler further generates a list ofthe programs scheduled to be recorded during the time duration, the listof programs generated for display within the program guide.
 7. Arecording resources indication system as recited in claim 1, wherein theresource scheduler generates the recording resources indication as asemi-transparent grid section to indicate a beginning of the timeduration and an end of the time duration during which the one or morerecording resources are fully-allocated.
 8. A recording resourcesindication system as recited in claim 1, wherein: the resource schedulergenerates the recording resources indication as a semi-transparent gridsection to indicate a beginning of the time duration and an end of thetime duration during which the one or more recording resources arefully-allocated; and the resource scheduler further generates a list ofthe programs scheduled to be recorded during the time duration, the listof programs generated for display within the program guide.
 9. Arecording resources indication system as recited in claim 1, wherein:the program guide application is further configured to generate aprogram information display that includes a description of a selectedprogram, at least a portion of the selected program being scheduled forbroadcast during the time duration; and the resource scheduler isfurther configured to generate a program recording message for displayon the program information display, the program recording messageindicating that the one or more recording resources are fully-allocatedfor the time duration.
 10. A recording resources indication system asrecited in claim 1, wherein the resource scheduler is further configuredto generate a program recording conflict resolution guide that displayseach program scheduled to be recorded over a time duration in which oneor more of the programs scheduled to be recorded create a schedulingconflict due to the one or more recording resources beingfully-allocated for program recording during the time duration.
 11. Atelevision-based client device comprising the recording resources 9indication system as recited in claim
 1. 12. A digital video recordercomprising the recording resources indication system as recited inclaim
 1. 13. A recording resources indication system, comprising: one ormore recording resources each configured for allocation to a differentprogram that is scheduled to be recorded; a resource schedulerconfigured to generate a program recording conflict resolution guidethat displays each program scheduled to be recorded over a time durationin which one or more of the programs scheduled to be recorded create ascheduling conflict due to the one or more recording resources beingfully-allocated for program recording during the time duration.
 14. Arecording resources indication system as recited in claim 13, whereinthe one or more recording resources are tuners each configured to tuneto a different program channel.
 15. A recording resources indicationsystem as recited in claim 13, wherein the resource scheduler is furtherconfigured to generate a resource allocation bar for display within theprogram recording conflict resolution guide, the resource allocation barindicating a beginning of the time duration and an end of the timeduration during which the one or more recording resources arefully-allocated.
 16. A recording resources indication system as recitedin claim 13, wherein the resource scheduler is further configured togenerate a semi-transparent section for display within the programrecording conflict resolution guide, the semi-transparent grid sectionindicating a beginning of the time duration and an end of the timeduration during which the one or more recording resources arefully-allocated.
 17. A recording resources indication system as recitedin claim 13, wherein the resource scheduler is further configured togenerate the program recording conflict resolution guide to displayadditional recording time scheduled after the end of a program.
 18. Atelevision-based client device comprising the recording resourcesindication system as recited in claim
 13. 19. A digital video recordercomprising the recording resources indication system as recited in claim13.
 20. A recording resources indication system, comprising: one or morerecording resources each configured for allocation to a differenttransponder broadcast which includes one or more program channels thateach include one or more programs which are scheduled to be recorded; aprogram guide application configured to generate a program guide inwhich the programs are associated with a program broadcast schedule thatincludes a time when each of the programs are scheduled for broadcast ona program channel; and a resource scheduler configured to generate arecording resources indication for display within the program guide toindicate that the one or more recording resources are fully-allocatedfor a time duration during which one or more of the programs arescheduled to be recorded.
 21. A recording resources indication system asrecited in claim 20, wherein the one or more recording resources aretuners each configured to tune to a different transponder broadcast toreceive one or more of the programs.
 22. A recording resourcesindication system as recited in claim 20, wherein the one or morerecording resources include: a recording media configured to maintainrecorded programs; and multiple tuners each configured to tune to adifferent transponder broadcast to receive one or more programsscheduled to be recorded with the recording media.
 23. A recordingresources indication system as recited in claim 20, wherein the resourcescheduler generates the recording resources indication as a resourceallocation bar to indicate a beginning of the time duration and an endof the time duration during which the one or more recording resourcesare fully-allocated each to a different transponder broadcast.
 24. Arecording resources indication system as recited in claim 20, whereinthe resource scheduler generates the recording resources indication as alist of the programs scheduled to be recorded during the time duration.25. A recording resources indication system as recited in claim 20,wherein the resource scheduler generates the recording resourcesindication as a semi-transparent grid section to indicate a beginning ofthe time duration and an end of the time duration during which the oneor more recording resources are fully-allocated.
 26. A recordingresources indication system as recited in claim 20, wherein: theresource scheduler generates the recording resources indication as aresource allocation bar to indicate a beginning of the time duration andan end of the time duration during which the one or more recordingresources are fully-allocated each to a different transponder broadcast;and the resource scheduler further generates a semi-transparent gridsection for display within the program guide to indicate each programthat would create a recording conflict if scheduled for recording duringthe time duration.
 27. A recording resources indication system asrecited in claim 20, wherein the resource scheduler is furtherconfigured to generate a program recording conflict resolution guidethat displays each program scheduled to be recorded over a time durationin which one or more of the programs scheduled to be recorded create ascheduling conflict with one or more of the recording resources.
 28. Atelevision-based client device comprising the recording resourcesindication system as recited in claim
 20. 29. A digital video recordercomprising the recording resources indication system as recited in claim20.
 30. A recording resources indication displayed within a programguide to indicate that recording resources are fully-allocated.
 31. Arecording resources indication as recited in claim 30, wherein therecording resources are tuners each configured to tune to a differentprogram channel.
 32. A recording resources indication as recited inclaim 30, wherein the recording resources are tuners each configured totune to a different transponder broadcast to receive one or moreprograms over one or more program channels.
 33. A recording resourcesindication as recited in claim 30, wherein the recording resourcesindication is a resource allocation bar that indicates a beginning of atime duration and an end of the time duration during which the recordingresources are fully-allocated to record one or more programs that arescheduled to be recorded.
 34. A recording resources indication asrecited in claim 30, wherein the recording resources indication is alist of one or more programs that are scheduled to be recorded over atime duration during which the recording resources are fully-allocated.35. A recording resources indication as recited in claim 30, wherein therecording resources indication is a semi-transparent grid section thatindicates a beginning of a time duration and an end of the time durationduring which the recording resources are fully-allocated to record oneor more programs that are scheduled to be recorded.
 36. A recordingresources indication as recited in claim 30, wherein the recordingresources indication is a program recording message displayed withprogram information about a selected program, the program recordingmessage indicating that the recording resources are fully-allocated fora time duration during which at least a portion of the selected programis scheduled to be broadcast.
 37. A method, comprising: generating aprogram guide in which programs are associated with a program broadcastschedule that includes a time when each of the programs are scheduledfor broadcast; and generating a recording resources indication fordisplay within the program guide to indicate that recording resourcesare fully-allocated for a time duration during which one or more of theprograms are scheduled to be recorded.
 38. A method as recited in claim37, further comprising: receiving an input to record a program that isscheduled to be broadcast during the time duration; allocating a firsttuner to tune to a program channel on which the program will bebroadcast; receiving at least a second input to record an additionalprogram that is scheduled to be broadcast during the time duration;allocating at least a second tuner to tune to an additional programchannel on which the additional program will be broadcast; and whereinthe recording resources include the first tuner and the at least secondtuner, further wherein generating includes generating the recordingresources indication to indicate that the first tuner and the at leastsecond tuner are fully-allocated for the time duration.
 39. A method asrecited in claim 37, further comprising: receiving an input to record atleast a portion of a program that is scheduled to be broadcast duringthe time duration; allocating a first tuner to tune to a program channelon which the program will be broadcast; receiving at least a secondinput to record at least a portion of an additional program that isscheduled to be broadcast during the time duration; allocating at leasta second tuner to tune to an, additional program channel on which theadditional program will be broadcast; and wherein the recordingresources include the first tuner and the at least second tuner, furtherwherein generating includes generating the recording resourcesindication to indicate that the first tuner and the second tuner arefully-allocated for the time duration.
 40. A method as recited in claim37, further comprising: receiving an input to record one or moreprograms received over a transponder broadcast during the time duration;allocating a first tuner to tune to the transponder broadcast on whichthe one or more programs will be broadcast; receiving at least a secondinput to record one or more additional programs received over anadditional transponder broadcast during the time duration; allocating atleast a second tuner to tune to the additional transponder broadcast onwhich the one or more additional programs will be broadcast; and whereinthe recording resources include the first tuner and the at least secondtuner, further wherein generating includes generating the recordingresources indication to indicate that the first tuner and the secondtuner are fully-allocated for the time duration.
 41. A method as recitedin claim 37, wherein generating includes generating the recordingresources indication to indicate that available bandwidth over which oneor more program channel are received is fully-allocated for the timeduration.
 42. A method as recited in claim 37, wherein generatingincludes generating the recording resources indication to indicate thatavailable bandwidth over which to receive one or more transponderbroadcasts of one or more program channel is fully-allocated for thetime duration.
 43. A method as recited in claim 37, wherein generatingincludes generating the recording resources indication to indicate thatrecording media space to record one or more of the programs isfully-allocated for the time duration.
 44. A method as recited in claim37, wherein the recording resources include one or more tuners eachconfigured to tune to a different program channel, and whereingenerating includes generating the recording resources indication toindicate that the one or more tuners are fully-allocated for the timeduration.
 45. A method as recited in claim 37, wherein the recordingresources include one or more tuners each configured to tune to adifferent transponder broadcast, and wherein generating includesgenerating the recording resources indication to indicate that the oneor more tuners are fully-allocated for the time duration.
 46. A methodas recited in claim 37, wherein the recording resources indication isgenerated as a resource allocation bar to indicate a beginning of thetime duration and an end of the time duration during which the recordingresources are fully-allocated.
 47. A method as recited in claim 37,wherein the recording resources indication is generated as a list of theprograms scheduled to be recorded during the time duration.
 48. A methodas recited in claim 37, wherein the recording resources indication isgenerated as a semi-transparent grid section to indicate a beginning ofthe time duration and an end of the time duration during which therecording resources are fully-allocated.
 49. A method as recited inclaim 37, further comprising: generating a program information displaythat includes a description of a selected program, at least a portion ofthe selected program being scheduled for broadcast during the timeduration; and generating a program recording message for display on theprogram information display, the program recording message indicatingthat the recording resources are fully-allocated for the time duration.50. A method as recited in claim 37, further comprising generating aprogram recording conflict resolution guide that displays each programscheduled to be recorded over a time duration in which one or more ofthe programs scheduled to be recorded create a scheduling conflict dueto the recording resources being fully-allocated for program recordingduring the time duration.
 51. One or more computer-readable mediacomprising computer-executable instructions that, when executed, directa television-based client device to perform the method of claim
 37. 52.One or more computer-readable media comprising computer-executableinstructions that, when executed, direct a digital video recorder toperform the method of claim
 37. 53. One or more computer-readable mediacomprising computer executable instructions that, when executed, directa digital video recorder to: generate a program guide in which programsare associated with a program broadcast schedule that includes a timewhen each of the programs are scheduled for broadcast; allocaterecording resources to record one or more of the programs when they arescheduled to be broadcast; and generate a recording resources indicationfor display within the program guide to indicate that the recordingresources are fully-allocated for a time duration during which the oneor more programs are scheduled to be recorded.
 54. One or morecomputer-readable media as recited in claim 53, further comprisingcomputer executable instructions that, when executed, direct the digitalvideo recorder to receive one or more inputs that each initiateallocation of a recording resource to record a program that is scheduledto be broadcast at least in part during the time duration.
 55. One ormore computer-readable media as recited in claim 53, further comprisingcomputer executable instructions that, when executed, direct the digitalvideo recorder to generate the recording resources indication whenavailable bandwidth over which one or more program channel are receivedis fully-allocated for the time duration.
 56. One or morecomputer-readable media as recited in claim 53, further comprisingcomputer executable instructions that, when executed, direct the digitalvideo recorder to generate the recording resources indication whenavailable bandwidth over which to receive one or more transponderbroadcasts of one or more program channels is fully-allocated for thetime duration.
 57. One or more computer-readable media as recited inclaim 53, further comprising computer executable instructions that, whenexecuted, direct the digital video recorder to generate the recordingresources indication when recording media space to record the one ormore programs is fully-allocated for the time duration.
 58. One or morecomputer-readable media as recited in claim 53, further comprisingcomputer executable instructions that, when executed, direct the digitalvideo recorder to allocate one or more tuners as the recordingresources, each tuner configured to tune to a different program channelto receive the one or more programs.
 59. One or more computer-readablemedia as recited in claim 53, further comprising computer executableinstructions that, when executed, direct the digital video recorder toallocate one or more tuners as the recording resources, each tunerconfigured to tune to a different transponder broadcast of one or moreprogram channels to receive the one or more programs.
 60. One or morecomputer-readable media as recited in claim 53, further comprisingcomputer executable instructions that, when executed, direct the digitalvideo recorder to generate the recording resources indication as aresource allocation bar to indicate a beginning of the time duration andan end of the time duration during which the recording resources arefully-allocated.
 61. One or more computer-readable media as recited inclaim 53, further comprising computer executable instructions that, whenexecuted, direct the digital video recorder to generate the recordingresources indication as a list of the one or more programs scheduled tobe recorded during the time duration.
 62. One or more computer-readablemedia as recited in claim 53, further comprising computer executableinstructions that, when executed, direct the digital video recorder togenerate the recording resources indication as a semi-transparent gridsection to indicate a beginning of the time duration and an end of thetime duration during which the recording resources are fully-allocated.63. One or more computer-readable media as recited in claim 53, furthercomprising computer executable instructions that, when executed, directthe digital video recorder to: generate a program information displaythat includes a description of a selected program, at least a portion ofthe selected program being scheduled for broadcast during the timeduration; and generate a program recording message for display on theprogram information display, the program recording message indicatingthat the recording resources are fully-allocated for the time duration.64. One or more computer-readable media as recited in claim 53, furthercomprising computer executable instructions that, when executed, directthe digital video recorder to generate a program recording conflictresolution guide that displays each program scheduled to be recordedover a time duration in which one or more of the programs scheduled tobe recorded create a scheduling conflict due to the recording resourcesbeing fully-allocated for program recording during the time duration.